package cn.iocoder.yudao.module.system.controller.admin.gugu.gugu;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

/**
 * 学校分组信息
 */
@Schema(description = "学校分组信息")
@Data
public class SchoolGroupInfo {

    @Schema(description = "学校唯一ID", example = "c24a67f87405b82bec08a5638c32f282")
    private String schoolUuid;

    @Schema(description = "学校名称", example = "北京大学")
    private String schoolName;

    @Schema(description = "近三年招生计划总人数", example = "1500")
    private Integer totalEnrollmentNumbers;

    @Schema(description = "近三年招生专业数量", example = "85")
    private Integer majorCount;

    @Schema(description = "2024年招生计划人数", example = "500")
    private Integer enrollmentNumbers2024;

    @Schema(description = "2023年招生计划人数", example = "500")
    private Integer enrollmentNumbers2023;

    @Schema(description = "2022年招生计划人数", example = "500")
    private Integer enrollmentNumbers2022;

    @Schema(description = "2024年招生专业数量", example = "30")
    private Integer majorCount2024;

    @Schema(description = "2023年招生专业数量", example = "28")
    private Integer majorCount2023;

    @Schema(description = "2022年招生专业数量", example = "27")
    private Integer majorCount2022;

    // ========== 学校基础信息字段 ==========

    @Schema(description = "学校所在省份", example = "北京")
    private String province;

    @Schema(description = "学校所在城市", example = "北京市")
    private String city;

    @Schema(description = "学校所在区县", example = "海淀区")
    private String district;

    @Schema(description = "学校性质", example = "公办")
    private String collegeType;

    @Schema(description = "是否为985院校", example = "true")
    private Boolean is985;

    @Schema(description = "是否为211院校", example = "true")
    private Boolean is211;

    @Schema(description = "是否为双一流院校", example = "true")
    private Boolean isDualClass;

    @Schema(description = "学校类别", example = "综合类")
    private String collegeCategory;

    @Schema(description = "学校标签", example = "[\"985\", \"211\", \"双一流\"]")
    private List<String> collegeTags;

    @Schema(description = "学校学制", example = "本科")
    private String eduLevel;

    @Schema(description = "学校资质", example = "公办")
    private String collegeProperty;

    @Schema(description = "学校编号", example = "10001")
    private String collegeCode;

    @Schema(description = "全国排名", example = "1")
    private Integer ranking;

    @Schema(description = "学校所在类别下排名", example = "综合类第1名")
    private String rankingInCategory;

    @Schema(description = "学校官网", example = "https://www.pku.edu.cn")
    private String website;

    @Schema(description = "学校招生电话", example = "010-62751407")
    private String callNumber;

    @Schema(description = "学校招生邮箱", example = "bdzsb@pku.edu.cn")
    private String email;

    @Schema(description = "学校地址", example = "北京市海淀区颐和园路5号")
    private String address;

    @Schema(description = "学校校徽图片URL")
    private String coverImage;

    @Schema(description = "学校简介")
    private String intro;

    @Schema(description = "学校收费情况")
    private String expenses;

    @Schema(description = "学校旧称", example = "京师大学堂")
    private String oldName;

    @Schema(description = "学校简称", example = "北大")
    private String shortName;
}
